// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently
//

#pragma once

// Suppress all Windows function macroing
// MOE Functions have names such as GetObject which shouldn't be converted into GetObjectW / GetObjectA by macros
#define NOGDI

#include "targetver.h"

#include <stdio.h>
#include <tchar.h>

#include <iostream>
#include <string>

#include <boost/make_shared.hpp>
#include <boost/pool/pool_alloc.hpp>
#include <boost/property_tree/json_parser.hpp>
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/ptree_fwd.hpp>
#include <boost/smart_ptr.hpp>

#include <MOE/ClassMeta.h>
#include <MOE/ObjectTypeManager.h>
#include <MOE/Assign/Ctor.hpp>
#include <MOE/Assign/Dtor.hpp>
#include <MOE/Assign/Pointer.hpp>
#include <MOE/Assign/PointerFunc.hpp>
#include <MOE/Assign/Value.hpp>
#include <MOE/Assign/ValueFunc.hpp>
#include <MOE/Name/MapObjectToNameQuery.h>
#include <MOE/Name/Namespace.h>
#include <MOE/Persist/NamespacePropertyTreeReader.hpp>
#include <MOE/Persist/NamespacePropertyTreeWriter.hpp>
#include <MOE/Persist/PropertyTreeReader.hpp>
#include <MOE/Persist/PropertyTreeWriter.hpp>
#include <MOE/PtrPolicy/PtrPolicy.hpp>